起動ディスク(DOS)でネットワークアクセス
ここでは、起動ディスクでネットワークにアクセスする方法を紹介する。ポイントは起動ディスクということで、OSがMS-DOSであるということと、1枚のフロッピーに収める という2点である。そもそもどうしてそんなことが必要なのだろうか? 次のような用途が考えられる。
通常WindowsなどのOSをインストールする場合、インストールメディアとしてCD-ROMが普通だろう。OSは肥大化の一途を辿っており、今後は益々その必要性が高くなり、従来のようにフロッピーでの配布というのは、事実上不可能になるだろう。今デスクトップパソコンでCD-ROMの付いていないパソコンは皆無に近い。従ってそれも特に問題はあるまい。
しかし、携帯性を重視したモバイルノートパソコンなどでは少しでも軽くしたいとの要求から、あえてCD-ROMを外す場合がある。このような時、いったいOSはどうやってインストールすればいいのだろうか。
一つはPCMIAのPCカードを使ってCD-ROMドライブを接続するという手がある。この場合PCカード接続のCD-ROMを別途買う必要ある。もし別にデスクトップ機があるなら、そのCD-ROMドライブをネットワークで使えたらいいと考えられるだろう。どうせ2台以上のパソコンがあるなら、多くの人は当然ネットワークの構築を考えるだろう。その場合ネットワーク機器の用意は特別な出費ではないことになる。
ここで考えたいのが、OSのインストール、特にクリーンインストールの時には、そのパソコン上で基本的に既に動いているOSは他に無いという状況が普通である。クリーンインストール時にはハードディスクのパーティションを切ったり、フォーマットしたりすることが多いはずだ。そこで問題となるのが、そういう場合にOSをインストールする方法は言わずもがな、FD起動しかないということである。所謂起動ディスクというやつで、そこでの稼動OSはMS-DOSである。
そこで起動ディスクで立ち上げた状態、つまりMS-DOSが稼動しているだけの状態でネットワークにアクセスできるようにしたい訳だが、これを実現するのは実は容易いことではない。それを目指そうというのが、このページの目的である。
次のシステムのバックアップ、レストアの場合も同じである。バックアップはまだしも、システムのレストアは通常のそのシステムが稼動していたのではできない。やはり起動ディスクで起動しただけの状態で行いたいのである。ここでもノートパソコンなどは、普通MOなどの大容量リムーバブルディスクはついていない。ネットワークでアクセスできれば好都合である。
さて、ウンチクはこれくらいにして本題に入ろう。既に必要に迫られてここに来ている人も多いであろうから。ここでは序説でも述べたようにノートパソコンの場合に特に必要な場面が多いと思われるので、それを想定して話をすすめる。
説明のモデルは、実際私の所有している、NECのモバイルノート『LaVie NX LB400J/12D』である。実際このノートにはCD-ROMが標準で添付されているので、特にOSのクリーンインストールに困ることはない。主な目的はシステムのフルバックアップということになる。メーカーとしてそもそもDOSをサポートしていないNXでの挑戦である。やり甲斐があるというものだ。ネットワークカードは、PCI社の『FNW-3700-T』という100BASE-TX/10BASE-TのPCMCIAのPCカードを選択した。
まず起動ディスクだけでネットワークアクセスを可能にするには次のものが必要である。
まあ、ネットワークインストールを試みるのに、パソコンが一つでは当然話にならない。最低は2台あり、既にネットワーク環境が構築されていることが前提である。つまり具体的にはHUBがあるかとか、ネットワークカードが刺さっているかとかである。ただし相手のパソコンのOSは問わない。
因みに私の場合、デスクトップのWindows98マシンが2台ある。当然すでにネットワーク環境は構築されている。HUBはダイアルアップルータのそれを利用している。La Vieからこの2台のデスクトップがDOS上で見えればOKという訳だ。
次にノートパソコンをネットワーク接続されるためのDOSドライバ群だが、もし手持ちノートパソコンにLANカードが標準で付いていたらかなり話は簡単になる。必要なドライバはDOS用のLANドライバだけである。ところがそうでない場合、基本的にLANのPCMCIA PCカードを使うことになる訳だが、これがかなり厄介である。この点はこちら『起動ディスク(DOS)でPCカードを使う方法』に譲ろう。因みに、同ページにも示してあるが私の場合、カード添付のポイントイネーブラと使うことができた。
ここではLANドライバの用意からの話にしよう。多くのネットワークカードにはMicrosoft LAN Managerのドライバが添付されているはずである。DOSのLANドライバとは、通常このLAN Manager用のドライバでいい。しかしドライバディスクのNDISとかいうディレクトリにある場合も多いが、ここの格納されているものもDOSドライバとして使える。このあたりは基本的にカードに添付された取説を読んでもらいたい。因みにドライバファイルは必ずsysという拡張子のついたファイルである。
このDOSドライバがないと話は終わりである。カードメーカーのWebなどから探してみて見つかればよいが、あまり安物の場合、DOSのドライバなど用意されていない場合が多い。これから購入する場合は、必ずDOSドライバが添付されていることを確認して購入しよう。箱などに記述されているサポート(ネットワーク)OSに先ほどの「Microsoft LAN Manager」があれば、添付されていると思って間違いない。そうでない場合は、ショップやメーカで確認しよう。くれぐれも得体の知れないバルク品などは買わないように。
しかし必要なのは、sysという拡張子のついたドライバファイルだけでなく、ドライバをセットアップするための、セットアップ情報ファイルというものが別途必要である。名称は『Network.inf』か『oemsetup.inf』というファイルである。これがドライバファイルと一緒に添付されていないと困る。ただし箱の記述などからはこれらのファイルの添付を確認することはまず不可能である。もしこれがない場合、自分で作る他ないのだが、この方法についてはこちら「セットアップ情報ファイルの作成方法」で述べよう。
さて、次はいよいよネットワークソフトウェアである。ここではMicrosoft Workgroup Connectionというソフトを使う。DOSで使えるネットワークソフトウェアは、他にもいくつかあるが、コンベンショナルメモリも食わず、なんと言ってもフロッピーディスクに収めるには他に選択肢がない。ものはftp://ftp.microsoft.com/softlib/mslfiles/mswgcn.exeから入手できる。ご懸念には及ばない。フリーソフトである。一応以下の制限あるので、注意してほしい。
今回の目的(OSのクリーンインストールやシステムのバックアップ)には上記の制限は特に問題ないだろう。よもや起動ディスクで立ち上げて、本格的にネットワークに参加しようと思う人はあまりいないはずだ。MS-DOSで本格的なネットワーク環境を構築するのが、このページの目的ではない。そのようなことがしたい人は、起動ディスクに収めることはあきらめ、ハードディスクにMicrosoft LAN Managerでもインストールしよう。
最後の2枚のフロッピーディスクだが、当然2HDの1.44MBでフォーマットされたものである。もっとも1枚はブートフロッピーディスクとするため、特別なフォーマットが必要だが、それはこれから説明しよう。
さて用意するものが揃ったら、まずはWorkgroup Connectionのインストールの準備に入ろう。
最も単純なブートフロッピーディスクは、Windows上で起動専用でフォーマットするか、DOS上でシステム転送つきフォーマット「format /s」をするか、通常フォーマット後、システム転送「sysコマンド」するという3通りで作成できる。
ただこうしてできたブートディスクは、日本語表示もされないし、使い慣れた日本語106キーボードが使えない。日本語表示に関しては、実現するのに結構大きなファイルが必要になる。これからの作業で手狭なフロッピーにいろいろなものを入れる必要があるため、基本的にはあきらめた方がいい。まあそれほど不便なことはない。別にアラビア語が表示される訳でもないし、一般的な日本人なら十分理解できる英語で表示されるのだから。
しかし日本語106キーボード環境は大したドライバも必要ないので、是非用意しておきたい。キートップの表示と実際に入力される文字が違うのは大変使いずらいものである。特に非常によく使うコロンやハイフンの位置が違うのはとてもストレスが溜まる。
そこで何とかWindows95/98環境を用意、または借りて、そこで起動ディスクを作り、不必要なものを省いて作るのがいいだろう。以下に日本語106キーボードが使える最小限の起動ディスクの内容を紹介しよう。
[日本語(106)キーボードが使える最小構成]
IO.SYS MSDOS.SYS COMMAND.COM HIMEM.SYS JKEYB.SYS JKEYBRD.SYS CONFIG.SYS |
これらのファイルを用意し、Config.sysには以下のように記述する。(これ以外の記述は削除する)
[Config.sysの内容]
DEVICE=HIMEM.SYS DEVICE=JKEYB.SYS /106 JKEYBRD.SYS |
ここでも分かるように、日本語106キーボードを使うのに必要なのは、JKEYB.SYSとJKEYBRD.SYSの2つのドライバである。 HIMEM.SYSは直接これらキーボードドライバと関係ないが、今後様々なドライバを利用する場合、一応ハイメモリを使えるようこのドライバも是非用意しておきたい。
基本的にはブートフロッピーディスクはこれで完成だが、LANカードとしてPCMCIA PCカードを使う場合は『起動ディスク(DOS)でPCカードを使う方法』を参照して、それなりのブートフロッピーディスクにする必要がある。
因みに先ほどもちょっと述べたが、私の場合、ポイントイネーブラを追加している。
もう一つのフロッピーディスクには、まずダウンロードしたWorkgroup Connectionのインストーライメージを解凍して、全部このディスクに突っ込む。自己解凍式なので特に問題ないだろう。このディスクでブートする訳ではないので、普通の1.44MBフォーマットがしてあればいい。
その後は、用意したDOSのネットワークドライバを入れるのだが、必ず一つディレクトリ(フォルダ)を作り、そこに入れよう。インストール時にはディレクトリを指定してドライバファイルを指定することになるからだ。先ほども説明したように、このディスクに入れておくのは、ドライバファイルの他、oemsetupinfなどのセットアップ情報ファイルもそうである。
さていよいよWorkgroup Connectionのインストールだが、ここで注意して頂きたいのが、インストールは一旦ハードディスクに行うことである。これはインストールされるファイルが全部で1.5MB程あるためである。実際起動に必要なファイルはその内の一部なのだが、インストーラはこれらを全部入れようとするので、フロッピーにインストールしようとすると転送不能でエラーになる。
そこで一旦ハードディスクにインストールして、後で必要なものだけをブートフロッピーディスクに移すという作業を行う。一部のファイルは内容も書き換える必要がある。勿論これは後で詳しく説明する。
従ってWorkGroup Connectionインストール直後は、ブートはフロッピーディスクで行うが、実際動いているネットワークのドライバやコマンドはハードディスクにあるという変則的な状態(もっともWorkGroup Connectionにとっては普通の利用形態だが)になっている。
インストールについて、全画面の説明はしない。もし全画面の説明がほしい場合は、稲田さんのページが詳しいので参照してほしい。ここでは、重要で、はまりそうな場面だけ「画面付き」で説明する。
基本的には「Enter(return)」キーで進める。
まずは作成したブートディスクで起動する。
起動したら、ディスクをもう一つのディスク「Workgroup Connectionセットアップディスク」に差し替えて、「setup」というコマンドを打つ。
A:\>setup
|
Welcomeメッセージが出るが、ここでは「Enter」を押すだけ。
次にインストール先の指定を促されるので、先ほども述べたように、インストールは一旦ハードディスクに行うので、ここではハードディスク上の特定の場所を指定する。まあ「C:\DOS」とでもしておこう。一時的なものなので、ブートディスクが読める場所なら(たとえばFAT32のパーティションなど)、どこでも構わない。インストール先をタイプしたら「Enter」を押す。
この後ブートディスクに差し替えるよう促されるので、指示に従って差し替え、「Enter」を押す。インストーラが何かブートディスクに書き込む。書き込みを終えると、再びWorkgroup Connectionセットアップディスクに差し替えるよう促すので、差し替えて「Enter」を押す。
いよいよネットワークドライバの指定だが、ここは重要なので、少し詳しく説明しよう。以下のような画面が出る。
Select
the
type
of
network
card
that
is
installed
in
your computer,and then press ENTER.
No
Network
card |
ここでは、リストにないもの、つまり自分で用意したドライバを指定するために、「Network card not shown on list below ...」を選択して、「Enter」を押す。
次にネットワークドライバのある「ディレクトリ」を指定を促すので、ドライバを収めたディレクトリを指定し(今回例では「C:\DOS」)、「Enter」。
Select
the
type
of
network
card
that
is
installed
in
your computer, and then press ENTER.
|
このようにネットワークカードの名称が表示されたらOK。複数のものがリストアップされることもあるかもしれないが、適当なものを選んで、「Enter」を押す。
ドライバの読み込みが行われると次に、コンピュータ名の指定を促される。このあたりはWindowsなどと同じで、適当なものでいいが、参加させようとするネットワークに対して一意のものをつけよう。私の場合、今回「SATURNOS」(ローマ神話のジュビターの父、サトゥルヌス、英語名サターン。ギリシャ神話でいうゼウスの父クロノス)にした。
ここもWindowsなどと同じで、適当なものでもいいが、せっかくなら参加させるネットワークと同じワークグループにしておいた方が便利だ。私の場合は「workgroup」だ。
以上の設定が終わると、今まで設定したもの、認識したものが表示され、これでいいのか訪ねてくる。設定したおぼえないものなどもあるが、これはインストーラが自動認識したものなので、別に気にする必要はない。ここで変更することもできるが、特に変更する必要もないだろう。
一つ補足するとすれば、ユーザ名なるものが、勝手にコンピュータ名と同じもので設定されている。通常Windowsのネットワークではそれほどユーザ認証に気を使う必要はないので、このままでもいいだろう。また後でいくらでも別ユーザでログインすることもできる。
一応一通り内容を確認したら、「Enter」で進めるだけ。
上記の確認が終わると、ファイルの転送を始める。インジケータが出るが、それほどかからないので待とう。
転送の最後の方で、ブートディスクへの差し替えを促してくる。またブートディスクに差し替えて「Enter」を押す。ブートディスクに最終的な情報が書き込まれる。
最後に、再起動するので「ブートディスクを抜く」ように促されるが、このブートディスクで起動するので、そのまま「Enter」で構わない。
Starting
Windows98... PCMCIA Client Driver V1.10 I/O Base = 0x300, IRQ = 11, Slot = 0
Microsoft
Protocol
Manager
Version
2.1
A:\>SET PATH=C:\DOS A:\>C:\DOS\net start
Microsoft
Netbind
version
2.1 |
OSが起動しはじめ、ポイントイネーブラが読み込まれ、WorkGroup Connectionが起動されていく様子がわかる。やがてネットワークドライバが読み込まれ、パスが設定され、netコマンドがstartオプションで起動される。NetbindとNetBEUIの表示がでて、ユーザ名の入力を促すプロンプトが出れば、もう半ば成功したようなものである。
ユーザ名については先ほどのちょっと説明したが、コンピュータ名と同じものがデフォルトユーザになっている。もしそのユーザ(上記の例では「SATURNOS」)でいいのなら「Enter」だけでいい。別のユーザでログインしたいなら、ユーザ名をタイプして「Enter」である。
次にパスワードの入力が要求されるので、適当に入れればいい。初めてのログインなので、何でもいい。その後初めてということで再入力が要求されるので、それに従い同じパスワードをタイプする。
首尾よくログインできれば、OK。早速「net view」というコマンドを打ってみよう。
A:\>net view
|
しかし以下のようなメッセージが表示されるかもしれない。
A:\>net view Error 6118: The list of servers for this workgroup is not currently available.
|
これはそれほどがっくりすることはない。起動直後はまだネットワークが見えない場合が多い(これはWindowsなどでもよくあることだ)。ちょっとしてから、もう一度トライしてみよう。
A:\>net view Server Name Remark NOBUSAN NOBU'S CELERON PC TAKAKO TAKAKO'S K6-2 PC The command complete successfully
|
このように表示されれば、バッチリだ。ちゃんとネットワーク上の他のマシンが見える。更に見えたマシンを指定して、net viewコマンドを発行してみる。
A:\>net
view
\\nobusan
Shared
resources
at
\\nobusan CD-R Disk MO Disk nobumasa Disk takako Disk The command completed successfully. |
今度は共有資源も見える。ここまでできればもう問題ない。ネットワークアクセス成功である。更に詳しい使い方の説明の前に最後の作業を終えてしまおう。
ハードディスクにインストールしたファイルの中から、以下のファイルをブートフロッピーディスクにコピーしよう。必須ではないが、他のシステムファイルと区別するため、一つディレクトリを作って格納した方が整理がつくだろう。ここでは「WGC」というディレクトリでも作るとしよう。
[ハードディスクから移設すべきファイル]
NET.EXE NET.MSG NETH.MSG PROTMAN.DOS PROTMAN.EXE PROTOCOL.INI SYSTEM.INI CONNECT.DAT WORKGRP.SYS SATURNOS.PWL <- パスワードリストファイル LE120.DOS <- ネットワークドライバファイル |
上記のうちパスワードリストファイルとネットワークドライバファイルそれぞれの環境で違うだろう。パスワードリストファイルは、パスワードが格納されているファイルだ。先ほどデフォルトユーザ「SATURNOS」でログインしたため、このような名称で作られている。これは必ずコピーしなければならないものではない。無ければ作られるが、またパスワードの再確認が行われるので、面倒なのでコピーしてしまおう。
ドライバファイルのサイズにもよるが、これだけで700kB弱である。先ほどの日本語106キーボード使用可能システム環境と合わせても1MB強なので、VFATBAKなどのバックアップソフトファイルも余裕で入る。こんな少量のファイル群でネットワーク環境が作れるのは、ちょっと感激である。
ファイルをコピーしたら、上記移設ファイル中のSystem.iniと、元々ブートフロッピーディスク内にあるConfig.sysとAutoexec.batを環境の移設に伴い、部分的に内容を変更する。
変更は全て、インストール先であるハードディスクのパス(今回の例では「C:\DOS」)をフロッピーディスクの移設先(例では「A:\WGC」)に変えるものである。
[System.iniの変更]
[network] computername=SATURNOS lanroot=A:\WGC autostart=basic dospophotkey=N username=SATURNOS workgroup=WORKGROUP reconnect=no [Password Lists] NOBU=A:\WGC\SATURNOS.PWL |
[Config.sysの変更]
DEVICE=HIMEM.SYS DEVICE=JKEYB.SYS /106 JKEYBRD.SYS DEVICE=LANEN.EXE device=A:\WGC\protman.dos /i:a:\wgc device=A:\WGC\workgrp.sys device=A:\WGC\LE120.dos LASTDRIVE=Z |
[Autoexe.batの変更]
SET
PATH=A:\WGC A:\WGC\net start |
以上で、完全無欠の「ネットワーク起動ディスク」の完成です!!
さて、早速この起動ディスクでブートする訳だが、本当にフロッピーディスク内のファイル群だけで起動できていることを確認するため、ハードディスクにインストールしたものは消すなり、どこかに移動するなりしてしまおう。
用意が整ったら、Ctrl-Alt-Deleteで、再起動!
Starting
Windows98... PCMCIA Client Driver V1.10 I/O Base = 0x300, IRQ = 11, Slot = 0
Microsoft
Protocol
Manager
Version
2.1
A:\>SET PATH=A:\WGC A:\>A:\WGC\net start
Microsoft
Netbind
version
2.1 |
起動する、起動する。感動!! ユーザ名入力、パスワード入力と進む。「net view」で一応確認。
A:\>net view Server Name Remark NOBUSAN NOBU'S CELERON PC TAKAKO TAKAKO'S K6-2 PC The command complete successfully
Shared
resources
at
\\nobusan CD-R Disk MO Disk nobumasa Disk takako Disk The command completed successfully. |
正しくネットワークにアクセスできることが確認できたら、次は直接ネットワーク資源にアクセスするため、共有資源(ディレクトリ)を「net use」コマンドを使ってドライブにマウントしてみよう。例では、コンピュータ「nobusan」の「MO」ディレクトリを「Mドライブ」にマウントしてみる。
A:\>net use m: \\nobusan\mo The command completed successfully. |
コマンドは成功したようだ。本当にマウントできているか確認する。マウントしたMドライブに移って、内容を見てみよう。
A:\>m: M:\>dir Volume in drive M has no lavel Directory of M:\
USER <DIR> 99-12-12
22:09
|
正しくMドライブに移動し、その内容の確認もできた。
これでネットワーク共有資源を、あたかもローカルドライブのもののように扱うことができる。目的であるネットワークアクセスの完結である。以下に主なコマンドリファレンスを示す。後はいろいろ自分で試してほしい。
[Workgroup Connection の主なコマンド]
NET VIEW [\\コンピュータ名] | オプション引数なしで実行すると,ネットワークに接続されているコンピュータ名を表示する.オプション引数にコンピュータ名を指定して実行すると,そのコンピュータの共有資源を表示する. |
NET USE [ドライブ名] [\\コンピュータ名\共有資源名] | オプション引数なしで実行すると現在の利用状態(マウント状況)を表示する。左のようなオプション引数を指定すると共有資源を利用可能にする(ドライブにマウントする) NET USE R: /DELETE のようにすると,R:として設定した資源を削除(アンマウント)できる. |
NET HELP [コマンド名] | オプション引数なしで実行するとコマンド一覧が表示される.オプション引数にコマンド名を指定して実行すると,そのコマンドについてのヘルプが表示される. |